<?php

namespace Trawind\Remotes\Contracts\Repositories\Account\Account;

use Prettus\Repository\Contracts\RepositoryInterface;

/**
 * Interface EmployeeRepository.
 *
 * @package namespace TrawindCloud\Contracts\Repositories\Account;
 */
interface EmployeeRepository extends RepositoryInterface
{
    /**
     * Company status management.
     *
     * @param array $ids
     * @param $employeeStatus
     * @return mixed
     */
    public  function  treatmentState(array $ids, $employeeStatus);

    /**
     * Save employee information.
     *
     * @param array $params
     * @return mixed
     */
    public function saveEmployee(array $params);

    /**
     * Update employee information.
     *
     * @param array $params
     * @param $id
     * @return mixed
     */
    public function updateEmployee(array $params,int $id);

    /**
     * Delete employee information.
     *
     * @param array $ids
     * @return mixed
     */
    public function deleteEmployee(array $ids);

    /**
     * subordinate.
     *
     * @param int $id
     * @return mixed
     */
    public function subordinate (int $id);

    public function getEmployeeIds(int $departmentId,int $companyId);

    public function saveLocation(array $params);
}
